package com.rc.saas.mini.model.tenant;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.rc.saas.mini.common.base.BaseModel;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @Description 
 * @Author  
 * @Date: 2022-04-24
 */

@ApiModel(value=" tenant_operator_account_record ", description=" 分销商余额变动记录 ")
public class TenantOperatorAccountRecord extends BaseModel{ 

    @ApiModelProperty(value = "ID")
    private Long accountRecordId;
 
    @ApiModelProperty(value = "运营商")
    private String tenantCode;
 
    @ApiModelProperty(value = "分销商")
    private String tenantOperatorCode;
 
    @ApiModelProperty(value = "运营商/分销商结算对账单ID,关联acct_bill_order表")
    private Long billOrderId;
 
    @ApiModelProperty(value = "结算单号")
    private String billOrderNum;
 
    @ApiModelProperty(value = "运营商/分销商提现单ID,关联acct_withdraw_order表")
    private Long withdrawOrderId;
 
    @ApiModelProperty(value = "收款账户类型,0 对公（在金融机构开设的公司账户）,如果银行卡为对公，必须传递省市支行信息或者联行号 1对私（在金融机构开设的个人账户）")
    private String accountType;
 
    @ApiModelProperty(value = "商户端的唯一订单号")
    private String outTradeNo;
 
    @ApiModelProperty(value = "支付宝转账单据号 order_id")
    private String transactionId;
 
    @ApiModelProperty(value = "支付宝支付资金流水号,转账失败不返回 pay_fund_order_id")
    private String fundTransactionId;
 
    @ApiModelProperty(value = "记录类型(0 收入 1 提现)")
    private String recordType;
 
    @ApiModelProperty(value = "变更余额")
    private BigDecimal amount;
 
    @ApiModelProperty(value = "变更后余额")
    private BigDecimal result;
 
    @ApiModelProperty(value = "备注")
    private String remark;
 
    @ApiModelProperty(value = "null")
    private String createdBy;
 
    @ApiModelProperty(value = "null")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdTime;
 
    @ApiModelProperty(value = "null")
    private String lastUpdatedBy;
 
    @ApiModelProperty(value = "null")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdatedTime;
 
    public Long getAccountRecordId() {
        return accountRecordId;
    }

    public void setAccountRecordId(Long accountRecordId) {
        this.accountRecordId = accountRecordId;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public String getTenantOperatorCode() {
        return tenantOperatorCode;
    }

    public void setTenantOperatorCode(String tenantOperatorCode) {
        this.tenantOperatorCode = tenantOperatorCode;
    }

    public Long getBillOrderId() {
        return billOrderId;
    }

    public void setBillOrderId(Long billOrderId) {
        this.billOrderId = billOrderId;
    }

    public String getBillOrderNum() {
        return billOrderNum;
    }

    public void setBillOrderNum(String billOrderNum) {
        this.billOrderNum = billOrderNum;
    }

    public Long getWithdrawOrderId() {
        return withdrawOrderId;
    }

    public void setWithdrawOrderId(Long withdrawOrderId) {
        this.withdrawOrderId = withdrawOrderId;
    }

    public String getAccountType() {
        return accountType;
    }

    public void setAccountType(String accountType) {
        this.accountType = accountType;
    }

    public String getOutTradeNo() {
        return outTradeNo;
    }

    public void setOutTradeNo(String outTradeNo) {
        this.outTradeNo = outTradeNo;
    }

    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    public String getFundTransactionId() {
        return fundTransactionId;
    }

    public void setFundTransactionId(String fundTransactionId) {
        this.fundTransactionId = fundTransactionId;
    }

    public String getRecordType() {
        return recordType;
    }

    public void setRecordType(String recordType) {
        this.recordType = recordType;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getResult() {
        return result;
    }

    public void setResult(BigDecimal result) {
        this.result = result;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }

}
